<?php


use Plugins\Demo\Http\Admin\Controller\IndexController;
use Sc\Util\HtmlStructure\Form;
use Sc\Util\HtmlStructure\Form\FormItem;
use Sc\Util\HtmlStructure\Html\Html;
use Sc\Util\HtmlStructure\Html\Js;
use Sc\Util\HtmlStructure\Html\Js\VueComponents\Temporary;
use Sc\Util\HtmlStructure\Table;

Html::create('表格搜索');

$table = Table::create(
    sc_route([IndexController::class, 'demoListData']),
    // 第二个参数为表格ID，用于区分多个表格
    'demo7'
)->addColumns(
    Table\Column::selection(),
    Table\Column::normal('ID', 'id'),
    Table\Column::normal('姓名', 'name')
        // like方法搜索 user表的name字段,后端关联查询时自动适配
        ->addSearch('like', 'user.name'),
    Table\Column::normal('年龄', 'age'),
    Table\Column::normal('状态', 'status')->showMapping([
        1 => '正常',
        2 => '禁用',
    ])
        // 没有设置参数时，默认为 =（全匹配），字段为设置的字段,如果是in类型，则表单识别为多选下拉框
        //->addSearch('in'),
        ->addSearch(),
    Table\Column::normal('简介', 'intro')
        // 第二个参数可以为表单组件
        ->addSearch('like', FormItem::text('intro')->placeholder("简介")),
    Table\Column::normal('创建时间', 'create_time')
        // 字段带有time等，自动适配时间区间搜索
        ->addSearch(),
);

// 关闭列设置
$table->setOpenSetting(false);

return $table->render();